1. Field of the Invention
The present invention generally relates to an apparatus and method for allocating resources in a wireless communication system. More particularly, the present invention relates to an apparatus and method for receiving packet data using persistent resources in a wireless communication system using Hybrid Automatic Repeat reQuest (HARQ).
2. Description of the Related Art
In general, the term “wireless communication system” refers to a system that conducts communications between a Mobile Station (MS) and a network by a radio link. The MS and a Base Station (BS) transmit and receive data in a predetermined Radio Frequency (RF). Typically, other nodes connected to the BS communicate with the BS by cable. To enable a plurality of users to communicate simultaneously, wireless communication systems use a variety of multiple access schemes including Code Division Multiple Access (CDMA), Frequency Division Multiple Access (FDMA), and Time Division Multiple Access (TDMA).
The multiple access schemes distinguish users by code, frequency, and time resources, respectively. Through efficient allocation of these resources, services can be provided to more users.
The wireless communication systems can be categorized largely into a voice mobile communication system, a data mobile communication system, and a mobile communication system that provides both voice and data services. To provide better communication services, the data mobile communication system requires a technique for additionally providing voice service. To satisfy this demand, the data mobile communication system has been developed to provide the voice service in the form of Voice over Internet Protocol (VoIP).
Strictly speaking, communications cannot be conducted in real time, because no matter how advanced a communication device is, it takes time. In this context, the terms ‘real time’, ‘quasi-real time’ and ‘non-real time’ will be defined herein, taking a simple example.
When a speaker and a listener converse facing each other, they seldom perceive a time difference. This conversation is conducted in real time. If the speaker and the listener use different languages and thus need an interpreter, they converse in quasi-real time. If they talk to each other by mail, their conversation is done in non-real time.
In general, ‘real time (or real-time service)’ means that even a slight time delay causes some problem to a service, such as VoiP. ‘Quasi-real time (or quasi-real-time service)’ is delay-tolerant to a certain degree. For example, streaming is quasi-real time. Like e-mail, ‘non-real time (or non-real-time service)’ tolerates a relatively long time delay. Herein below, the term ‘real time (or real-time service)’ covers the concept of ‘quasi-real time (or quasi-real-time service)’. Real-time services include music service, broadcasting, and video calls as well as voice service. The real-time services have a relatively small amount of data and are delay-sensitive. In comparison, data services are characterized by a large amount of data, intermittent data transmissions, relatively less sensitiveness to time delay.
Therefore, the data wireless communication system allocates resources, taking into the characteristics of data service. When providing a real-time service, the wireless communication system uses persistently assigned resources (hereinafter, persistent resources) and when providing a data service being a non-real time service, it uses dynamically assigned resources (hereinafter, referred to as dynamic resources), for efficient use of resources. The persistent resource allocation scheme allocates a predetermined amount of resources to one user (or an MS) for a predetermined duration so that the user can transmit and receive data during the duration. On the other hand, the dynamic resource allocation scheme can allocate resources to a different user in each data transmission unit.
As stated before, the wireless communication systems have been developed to provide a variety of services, including real-time and non-real-time services. Hence, the persistent resource allocation scheme suitable for real-time services is required even for the data system. For convenience' sake, VoIP is taken as a communication service using persistent resources. How resources are allocated for providing the VoIP service will first be described below.
FIG. 1 illustrates an operation for providing the VoIP service in a wireless communication system.
Referring to FIG. 1, reference numeral 110 denotes a timing at which a vocoder outputs a coded voice signal and reference numeral 120 denotes a timing at which the coded voice signal from the vocoder arrives at a BS over an IP network.
During a voice conversation, a speaker (i.e. a transmitter) alone does not speak continuously. Hence, the vocoder receives, encodes, and outputs a voice signal during on-periods 111 and 113 and neither receives nor outputs a voice signal during an off-period 112. It is known that the vocoder outputs a coded signal in every 20-ms frame. Due to this vocoder characteristic, VoIP is serviced in persistent resources that are allocated every predetermined period (i.e. 20 ms). However, since the wireless communication system uses an IP network being a packet communication system, coded signals from the vocoder may arrive at the BS with different time delays from different transmission paths.
It is assumed that a first coded voice signal 111a from the vocoder is delayed over the IP network and arrives at the BS after an initial packet delay 121. Thereafter, all packets from the vocoder do not have the same time delay, that is, they have different packet inter-arrival times 122.
From the perspective of the transmitter, data transmission in persistent resources will be described. When both a BS and an MS transmit and receive data, they can be a transmitter and a receiver at the same time. For convenience' sake, the following description is made in the context of data transmission from the BS to the MS.
FIG. 2 is a flowchart of an operation for transmitting data in persistent resources in a BS in a conventional wireless communication system.
Referring to FIG. 2, the BS allocates persistent resources to a particular MS, for data transmission in step 200. The persistent resources differ depending on a used multiple access scheme. For example, the resources are a Walsh code in CDMA and subcarriers in Orthogonal Frequency Division Multiple Access (OFDMA). In step 202, the BS determines whether it is time to transmit data.
If it is time to transmit data, the BS goes to step 204 and otherwise, the BS waits until the next transmission interval in step 208. In step 204, the BS determines whether transmission data exists for the MS for the current transmission interval with the persistent resources allocated. The transmission interval can be a Transmission Time Interval (TTI) or a time slot. In the presence of transmission data for the MS, the BS transmits the data to the MS in the persistent resources in step 206. In the absence of transmission data for the MS, the BS waits until the next transmission interval in step 208.
FIG. 3 illustrates a data transmission/reception relationship when persistent resources are allocated to a particular MS in the conventional wireless communication system.
Referring to FIG. 3, the horizontal axis represents time and the vertical axis represents resources. The resources vary depending on a used multiple access scheme, as stated before. User A and User B are allocated persistent resources for use during predetermined transmission intervals.
User B may be allocated the persistent resources allocated to User A, for example, frequency or code resources for use in a different transmission interval. The allocation of the same frequency resources to different users at different times is called interlace. The interlace structure will be described with reference to FIG. 3. The persistent resources allocated to User A are intended for a predetermined time interval. Therefore, another user can use the same frequency (or code) resources for a time interval when User A does not occupy the resources. This interlace structure is possible because of the time delay of data and HARQ. To be more specific, the resources allocated to User A can be used for time intervals 301 and 302. Then the same frequency resource can be allocated to other users for the time intervals unused by User A between the time intervals 301 and 302.
HARQ is a significant technology for increasing transmission reliability and data throughput in a wireless communication system that provides data service. In general, the data service is provided in packets and thus data is referred to as packet data.
HARQ applies both Automatic Repeat reQuest (ARQ) and Forward Error Correction (FEC). In ARQ widely used for wireless data communication systems, a transmitter numbers data packets in a predetermined method and a receiver detects a lost packet by its number and requests the retransmission of the lost packet to the transmitter. In this manner, ARQ increases data transmission reliability. FEC is a transmission scheme in which data is added with redundant bits in a predetermined rule such as convolutional coding or turbo coding so that the receiver corrects bit errors caused by noise or fading during data transmission/reception and demodulates the data transmitted by the transmitter.
As described above, the data receiver performs a reverse FEC operation on received data and checks a Cyclic Redundancy Check (CRC) for decoded data in the HARQ wireless communication system. If the CRC check indicates a successful reception, the receiver feeds back an ACKnowledgment (ACK) to the transmitter and the transmitter transmits the next data packet to the receiver.
If the data received from the CRC check turns out to be erroneous, the receiver feeds back a Negative ACK (NACK) to the transmitter and the transmitter retransmits the transmitted packet to the receiver. Upon receipt of the retransmission packet, the receiver combines the previous packet with the retransmission packet, thereby achieving an energy gain. Compared to an ARQ scheme without combining, HARQ offers a better performance. During a HARQ operation, for transmission of one packet, the packet is initially transmitted, which can be followed by a plurality of retransmissions according to ACK/NACK feedback. The initial transmission packet and the retransmission packets that are transmitted for the one packet are called sub-packets. That is, subpackets associated with transmission of one packet are called, respectively an initial transmission subpacket, a second subpacket (a first retransmission subpacket), a third subpacket (a second retransmission subpacket), . . . .
Reference numeral 321 denotes an ACK/NACK feedback for a HARQ operation. As described before, the receiver feeds back a decoding result. Typically, an initial transmission subpacket is transmitted in an arbitrary time slot of persistent resources. Hence, the data receiver is not aware of the time slot in which the initial transmission occurs. Reference numerals 311 to 314 describe a data demodulation operation of User A.
The terminal of User A attempts to demodulate data in the persistent resources at time 306. Without knowledge of the initial transmission time, the terminal of User A performs the packet demodulation, taking into account all cases that can be generated. That is, the terminal of User A attempts the demodulation of the received signal at time 306, assuming that the signal is initially transmitted. If the demodulation is failed, the terminal of User A takes the next case. That is, the terminal of User A considers that the initial transmission occurred at time 305 and the first retransmission subpacket has been transmitted at time 306. Whether the demodulation is successful is usually determined based on a CRC check. The receiver attempts a data demodulation by combining the signal received at time 306 with a signal received at time 305 according to a predetermined HARQ operation and then checks whether the demodulation is successful. If the demodulation has also failed, the receiver combines all signals received at times 306, 305 and 304. That is, the demodulation is based on the assumption that the subpacket received at time 306 is the second retransmission subpacket (i.e. the third subpacket). In this manner, the demodulation is performed over every possible case. The number of demodulations is determined according to a predetermined maximum allowed retransmission number for HARQ. If the maximum retransmission number is 4 (or 5 subpackets, including an initial transmission subpacket) can be transmitted for one packet. In the illustrated case of FIG. 3, the terminal of User A attempts a data demodulation for 5 possible cases at time 306. The data demodulations in the possible cases may not be performed in the above-described order. Depending on system setting, the order of data demodulation can be determined using various combinations.
As described above, a shortcoming with the data transmission in persistent resources is a complex data demodulation process because the receiver is not aware of the initial transmission time of data received in the persistent resources. As a result, the receiver may not receive an initial transmission packet correctly and thus retransmissions may occur frequently, causing a decrease in the overall data throughput. Accordingly, there exists a need for enabling a receiver to find out an initial transmission subpacket of a packet transmitted in persistent resources in a HARQ communication system.